/** layuiAdmin.std-v1.0.0-beta7 LPPL License By http://www.layui.com/admin/ */
;layui.define ("view", function (e) {
  var a = layui.jquery, i = layui.laytpl, t = layui.element, n = layui.setter, s = layui.view, l = layui.device (),
      o = a (window), r = a ("body"), d = a ("#" + n.container), u = "layui-show", c = "layui-this",
      y = "layui-disabled", f = "#LAY_app_body", m = "LAY_app_flexible", h = "layadmin-layout-tabs",
      p = "layadmin-side-spread-sm", v = "layadmin-tabsbody-item", b = "layui-icon-shrink-right",
      g = "layui-icon-spread-left", x = "layadmin-side-shrink", C = "LAY-system-side-menu", P = {
        v: "1.0.0-beta7 std", req: s.req, sendAuthCode: function (e) {
          e = a.extend ({seconds: 60, elemPhone: "#LAY_phone", elemVercode: "#LAY_vercode"}, e);
          var i, t = e.seconds, n = a (e.elem), s = function (a) {
            t--, t < 0 ? (n.removeClass (y).html ("获取验证码"), t = e.seconds, clearInterval (i)) : n.addClass (y).html (t + "秒后重获"), a || (i = setInterval (function () {
              s (!0)
            }, 1e3))
          };
          e.elemPhone = a (e.elemPhone), e.elemVercode = a (e.elemVercode), n.on ("click", function () {
            var i = e.elemPhone, n = i.val ();
            if (t === e.seconds) {
              if (!/^1\d{10}$/.test (n)) return i.focus (), layer.msg ("请输入正确的手机号");
              if ("object" == typeof e.ajax) {
                var l = e.ajax.success;
                delete e.ajax.success
              }
              P.req (a.extend (!0, {
                url: "/auth/code", type: "get", data: {phone: n}, success: function (a) {
                  layer.msg ("验证码已发送至你的手机，请注意查收", {icon: 1, shade: 0}), e.elemVercode.focus (), s (), l && l (a)
                }
              }, e.ajax))
            }
          })
        }, screen: function () {
          var e = o.width ();
          return e >= 1200 ? 3 : e >= 992 ? 2 : e >= 768 ? 1 : 0
        }, exit: s.exit, sideFlexible: function (e) {
          var i = d, t = a ("#" + m), s = P.screen ();
          "spread" === e ? (t.removeClass (g).addClass (b), s < 2 ? i.addClass (p) : i.removeClass (p), i.removeClass (x)) : (t.removeClass (b).addClass (g), s < 2 ? i.removeClass (x) : i.addClass (x), i.removeClass (p)), layui.event.call (this, n.MOD_NAME, "side({*})", {status: e})
        }, on: function (e, a) {
          return layui.onevent.call (this, n.MOD_NAME, e, a)
        }, popup: s.popup, popupRight: function (e) {
          return P.popup.index = layer.open (a.extend ({
            type: 1,
            id: "LAY_adminPopupR",
            anim: -1,
            title: !1,
            closeBtn: !1,
            offset: "r",
            shade: .1,
            shadeClose: !0,
            skin: "layui-anim layui-anim-rl layui-layer-adminRight",
            area: "300px"
          }, e))
        }, theme: function (e) {
          var t = (n.theme, layui.data (n.tableName)), s = "LAY_layadmin_theme", l = document.createElement ("style"),
              o = i ([".layui-side-menu,", ".layadmin-pagetabs .layui-tab-title li:after,", ".layadmin-pagetabs .layui-tab-title li.layui-this:after,", ".layui-layer-admin .layui-layer-title,", ".layadmin-side-shrink .layui-side-menu .layui-nav>.layui-nav-item>.layui-nav-child", "{background-color:{{d.color.main}} !important;}", ".layui-nav-tree .layui-this,", ".layui-nav-tree .layui-this>a,", ".layui-nav-tree .layui-nav-child dd.layui-this,", ".layui-nav-tree .layui-nav-child dd.layui-this a", "{background-color:{{d.color.selected}} !important;}", ".layui-layout-admin .layui-logo{background-color:{{d.color.logo || d.color.main}} !important;}}"].join ("")).render (e = a.extend ({}, t.theme, e)),
              d = document.getElementById (s);
          "styleSheet" in l ? (l.setAttribute ("type", "text/css"), l.styleSheet.cssText = o) : l.innerHTML = o, l.id = s, d && r[0].removeChild (d), r[0].appendChild (l), r.attr ("layadmin-themealias", e.color.alias), t.theme = t.theme || {}, layui.each (e, function (e, a) {
            t.theme[e] = a
          }), layui.data (n.tableName, {key: "theme", value: t.theme})
        }, tabsPage: {}, tabsBody: function (e) {
          return a (f).find ("." + v).eq (e || 0)
        }, tabsBodyChange: function (e, a) {
          a = a || {}, P.tabsBody (e).addClass (u).siblings ().removeClass (u), A.rollPage ("auto", e), layui.event.call (this, n.MOD_NAME, "tabsPage({*})", {
            url: a.url,
            text: a.text
          })
        }, resize: function (e) {
          var a = layui.router (), i = a.path.join ("-");
          o.off ("resize", P.resizeFn[i]), e (), P.resizeFn[i] = e, o.on ("resize", P.resizeFn[i])
        }, resizeFn: {}, runResize: function () {
          var e = layui.router (), a = e.path.join ("-");
          P.resizeFn[a] && P.resizeFn[a] ()
        }, delResize: function () {
          var e = layui.router (), a = e.path.join ("-");
          o.off ("resize", P.resizeFn[a]), delete P.resizeFn[a]
        }, closeThisTabs: function () {
          P.tabsPage.index && a (_).eq (P.tabsPage.index).find (".layui-tab-close").trigger ("click")
        }
      }, A = P.events = {
        flexible: function (e) {
          var a = e.find ("#" + m), i = a.hasClass (g);
          P.sideFlexible (i ? "spread" : null)
        }, refresh: function () {
          var e = P.tabsBody (P.tabsPage.index).find (".layadmin-iframe");
          e[0].contentWindow.location.reload (!0)
        }, message: function (e) {
          e.find (".layui-badge-dot").remove ()
        }, theme: function () {
          P.popupRight ({
            id: "LAY_adminPopupTheme", success: function () {
              s (this.id).render ("system/theme")
            }
          })
        }, note: function (e) {
          var a = P.screen () < 2, i = layui.data (n.tableName).note;
          A.note.index = P.popup ({
            title: "便签",
            shade: 0,
            offset: ["41px", a ? null : e.offset ().left - 250 + "px"],
            anim: -1,
            id: "LAY_adminNote",
            skin: "layadmin-note layui-anim layui-anim-upbit",
            content: '<textarea placeholder="内容"></textarea>',
            resize: !1,
            success: function (e, a) {
              var t = e.find ("textarea"),
                  s = void 0 === i ? "便签中的内容会存储在本地，这样即便你关掉了浏览器，在下次打开时，依然会读取到上一次的记录。是个非常小巧实用的本地备忘录" : i;
              t.val (s).focus ().on ("keyup", function () {
                layui.data (n.tableName, {key: "note", value: this.value})
              })
            }
          })
        }, about: function () {
          P.popupRight ({
            id: "LAY_adminPopupAbout", success: function () {
              s (this.id).render ("system/about")
            }
          })
        }, more: function () {
          P.popupRight ({
            id: "LAY_adminPopupMore", success: function () {
              s (this.id).render ("system/more")
            }
          })
        }, back: function () {
          history.back ()
        }, setTheme: function (e) {
          var a = n.theme, i = e.data ("index");
          e.siblings (".layui-this").data ("index");
          e.hasClass (c) || (e.addClass (c).siblings (".layui-this").removeClass (c), a.color[i] && (a.color[i].index = i, P.theme ({color: a.color[i]})))
        }, rollPage: function (e, i) {
          var t = a ("#LAY_app_tabsheader"), n = t.children ("li"), s = (t.prop ("scrollWidth"), t.outerWidth ()),
              l = parseFloat (t.css ("left"));
          if ("left" === e) {
            if (!l && l <= 0) return;
            var o = -l - s;
            n.each (function (e, i) {
              var n = a (i), s = n.position ().left;
              if (s >= o) return t.css ("left", -s), !1
            })
          } else "auto" === e ? !function () {
            var e, o = n.eq (i);
            if (o[0]) {
              if (e = o.position ().left, e < -l) return t.css ("left", -e);
              if (e + o.outerWidth () >= s - l) {
                var r = e + o.outerWidth () - (s - l);
                n.each (function (e, i) {
                  var n = a (i), s = n.position ().left;
                  if (s + l > 0 && s - l > r) return t.css ("left", -s), !1
                })
              }
            }
          } () : n.each (function (e, i) {
            var n = a (i), o = n.position ().left;
            if (o + n.outerWidth () >= s - l) return t.css ("left", -o), !1
          })
        }, leftPage: function () {
          A.rollPage ("left")
        }, rightPage: function () {
          A.rollPage ()
        }, closeThisTabs: function () {
          P.closeThisTabs ()
        }, closeOtherTabs: function (e) {
          var i = "LAY-system-pagetabs-remove";
          "all" === e ? (a (_ + ":gt(0)").remove (), a (f).find ("." + v + ":gt(0)").remove (), a (_).eq (0).trigger ("click")) : (a (_).each (function (e, t) {
            e && e != P.tabsPage.index && (a (t).addClass (i), P.tabsBody (e).addClass (i))
          }), a ("." + i).remove ())
        }, closeAllTabs: function () {
          A.closeOtherTabs ("all")
        }, shade: function () {
          P.sideFlexible ()
        }, im: function () {
          P.popup ({
            id: "LAY-popup-layim-demo",
            shade: 0,
            area: ["800px", "300px"],
            title: "面板外的操作示例",
            offset: "lb",
            success: function () {
              layui.view (this.id).render ("layim/demo").then (function () {
                layui.use ("im")
              })
            }
          })
        }
      };
  !function () {
    var e = layui.data (n.tableName);
    e.theme && P.theme (e.theme), l.ie && l.ie < 10 && s.error ("IE" + l.ie + "下访问可能不佳，推荐使用：Chrome / Firefox / Edge 等高级浏览器", {
      offset: "auto",
      id: "LAY_errorIE"
    })
  } (), t.on ("tab(" + h + ")", function (e) {
    P.tabsPage.index = e.index
  }), P.on ("tabsPage(setMenustatus)", function (e) {
    var i = e.url, t = function (e) {
      return {list: e.children (".layui-nav-child"), a: e.children ("*[lay-href]")}
    }, n = a ("#" + C), s = "layui-nav-itemed", l = function (e) {
      e.each (function (e, n) {
        var l = a (n), o = t (l), r = o.list.children ("dd"), d = i === o.a.attr ("lay-href");
        if (r.each (function (e, n) {
              var l = a (n), o = t (l), r = o.list.children ("dd"), d = i === o.a.attr ("lay-href");
              if (r.each (function (e, n) {
                    var l = a (n), o = t (l), r = i === o.a.attr ("lay-href");
                    if (r) {
                      var d = o.list[0] ? s : c;
                      return l.addClass (d).siblings ().removeClass (d), !1
                    }
                  }), d) {
                var u = o.list[0] ? s : c;
                return l.addClass (u).siblings ().removeClass (u), !1
              }
            }), d) {
          var u = o.list[0] ? s : c;
          return l.addClass (u).siblings ().removeClass (u), !1
        }
      })
    };
    n.find ("." + c).removeClass (c), P.screen () < 2 && P.sideFlexible (), l (n.children ("li"))
  }), t.on ("nav(layadmin-system-side-menu)", function (e) {
    e.siblings (".layui-nav-child")[0] && d.hasClass (x) && (P.sideFlexible ("spread"), layer.close (e.data ("index")))
  }), t.on ("nav(layadmin-pagetabs-nav)", function (e) {
    var a = e.parent ();
    a.removeClass (c), a.parent ().removeClass (u)
  });
  var k = function (e) {
    var a = e.attr ("lay-id"), i = e.index ();
    P.tabsBodyChange (i, {url: a})
  }, _ = "#LAY_app_tabsheader>li";
  r.on ("click", _, function () {
    var e = a (this), i = e.index ();
    P.tabsPage.type = "tab", P.tabsPage.index = i, k (e)
  }), t.on ("tabDelete(" + h + ")", function (e) {
    var i = a (_ + ".layui-this");
    e.index && P.tabsBody (e.index).remove (), k (i), P.delResize ()
  }), r.on ("click", "*[lay-href]", function () {
    var e = a (this), i = e.attr ("lay-href"), t = e.attr ("lay-text");
    layui.router ();
    P.tabsPage.elem = e;
    var n = parent === self ? layui : top.layui;
    n.index.openTabsPage (i, t || e.text ())
  }), r.on ("click", "*[layadmin-event]", function () {
    var e = a (this), i = e.attr ("layadmin-event");
    A[i] && A[i].call (this, e)
  }), r.on ("mouseenter", "*[lay-tips]", function () {
    var e = a (this);
    if (!e.parent ().hasClass ("layui-nav-item") || d.hasClass (x)) {
      var i = e.attr ("lay-tips"), t = e.attr ("lay-offset"), n = e.attr ("lay-direction"), s = layer.tips (i, this, {
        tips: n || 1, time: -1, success: function (e, a) {
          t && e.css ("margin-left", t + "px")
        }
      });
      e.data ("index", s)
    }
  }).on ("mouseleave", "*[lay-tips]", function () {
    layer.close (a (this).data ("index"))
  });
  var z = layui.data.resizeSystem = function () {
    layer.closeAll ("tips"), z.lock || setTimeout (function () {
      P.sideFlexible (P.screen () < 2 ? "" : "spread"), delete z.lock
    }, 100), z.lock = !0
  };
  o.on ("resize", layui.data.resizeSystem), e ("admin", P)
});